package com.wenwu.common.bean;

import java.util.ArrayList;
import java.util.List;

public class RelicsHumanityEnvironmentExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public RelicsHumanityEnvironmentExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andHumanityIdIsNull() {
            addCriterion("humanity_id is null");
            return (Criteria) this;
        }

        public Criteria andHumanityIdIsNotNull() {
            addCriterion("humanity_id is not null");
            return (Criteria) this;
        }

        public Criteria andHumanityIdEqualTo(Integer value) {
            addCriterion("humanity_id =", value, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdNotEqualTo(Integer value) {
            addCriterion("humanity_id <>", value, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdGreaterThan(Integer value) {
            addCriterion("humanity_id >", value, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("humanity_id >=", value, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdLessThan(Integer value) {
            addCriterion("humanity_id <", value, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdLessThanOrEqualTo(Integer value) {
            addCriterion("humanity_id <=", value, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdIn(List<Integer> values) {
            addCriterion("humanity_id in", values, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdNotIn(List<Integer> values) {
            addCriterion("humanity_id not in", values, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdBetween(Integer value1, Integer value2) {
            addCriterion("humanity_id between", value1, value2, "humanityId");
            return (Criteria) this;
        }

        public Criteria andHumanityIdNotBetween(Integer value1, Integer value2) {
            addCriterion("humanity_id not between", value1, value2, "humanityId");
            return (Criteria) this;
        }

        public Criteria andBasicIdIsNull() {
            addCriterion("basic_id is null");
            return (Criteria) this;
        }

        public Criteria andBasicIdIsNotNull() {
            addCriterion("basic_id is not null");
            return (Criteria) this;
        }

        public Criteria andBasicIdEqualTo(Integer value) {
            addCriterion("basic_id =", value, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdNotEqualTo(Integer value) {
            addCriterion("basic_id <>", value, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdGreaterThan(Integer value) {
            addCriterion("basic_id >", value, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("basic_id >=", value, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdLessThan(Integer value) {
            addCriterion("basic_id <", value, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdLessThanOrEqualTo(Integer value) {
            addCriterion("basic_id <=", value, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdIn(List<Integer> values) {
            addCriterion("basic_id in", values, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdNotIn(List<Integer> values) {
            addCriterion("basic_id not in", values, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdBetween(Integer value1, Integer value2) {
            addCriterion("basic_id between", value1, value2, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicIdNotBetween(Integer value1, Integer value2) {
            addCriterion("basic_id not between", value1, value2, "basicId");
            return (Criteria) this;
        }

        public Criteria andBasicNameIsNull() {
            addCriterion("basic_name is null");
            return (Criteria) this;
        }

        public Criteria andBasicNameIsNotNull() {
            addCriterion("basic_name is not null");
            return (Criteria) this;
        }

        public Criteria andBasicNameEqualTo(String value) {
            addCriterion("basic_name =", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameNotEqualTo(String value) {
            addCriterion("basic_name <>", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameGreaterThan(String value) {
            addCriterion("basic_name >", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameGreaterThanOrEqualTo(String value) {
            addCriterion("basic_name >=", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameLessThan(String value) {
            addCriterion("basic_name <", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameLessThanOrEqualTo(String value) {
            addCriterion("basic_name <=", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameLike(String value) {
            addCriterion("basic_name like", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameNotLike(String value) {
            addCriterion("basic_name not like", value, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameIn(List<String> values) {
            addCriterion("basic_name in", values, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameNotIn(List<String> values) {
            addCriterion("basic_name not in", values, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameBetween(String value1, String value2) {
            addCriterion("basic_name between", value1, value2, "basicName");
            return (Criteria) this;
        }

        public Criteria andBasicNameNotBetween(String value1, String value2) {
            addCriterion("basic_name not between", value1, value2, "basicName");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeIsNull() {
            addCriterion("charact_landscape is null");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeIsNotNull() {
            addCriterion("charact_landscape is not null");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeEqualTo(String value) {
            addCriterion("charact_landscape =", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeNotEqualTo(String value) {
            addCriterion("charact_landscape <>", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeGreaterThan(String value) {
            addCriterion("charact_landscape >", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeGreaterThanOrEqualTo(String value) {
            addCriterion("charact_landscape >=", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeLessThan(String value) {
            addCriterion("charact_landscape <", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeLessThanOrEqualTo(String value) {
            addCriterion("charact_landscape <=", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeLike(String value) {
            addCriterion("charact_landscape like", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeNotLike(String value) {
            addCriterion("charact_landscape not like", value, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeIn(List<String> values) {
            addCriterion("charact_landscape in", values, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeNotIn(List<String> values) {
            addCriterion("charact_landscape not in", values, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeBetween(String value1, String value2) {
            addCriterion("charact_landscape between", value1, value2, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andCharactLandscapeNotBetween(String value1, String value2) {
            addCriterion("charact_landscape not between", value1, value2, "charactLandscape");
            return (Criteria) this;
        }

        public Criteria andResidentStatusIsNull() {
            addCriterion("resident_status is null");
            return (Criteria) this;
        }

        public Criteria andResidentStatusIsNotNull() {
            addCriterion("resident_status is not null");
            return (Criteria) this;
        }

        public Criteria andResidentStatusEqualTo(String value) {
            addCriterion("resident_status =", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusNotEqualTo(String value) {
            addCriterion("resident_status <>", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusGreaterThan(String value) {
            addCriterion("resident_status >", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusGreaterThanOrEqualTo(String value) {
            addCriterion("resident_status >=", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusLessThan(String value) {
            addCriterion("resident_status <", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusLessThanOrEqualTo(String value) {
            addCriterion("resident_status <=", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusLike(String value) {
            addCriterion("resident_status like", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusNotLike(String value) {
            addCriterion("resident_status not like", value, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusIn(List<String> values) {
            addCriterion("resident_status in", values, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusNotIn(List<String> values) {
            addCriterion("resident_status not in", values, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusBetween(String value1, String value2) {
            addCriterion("resident_status between", value1, value2, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andResidentStatusNotBetween(String value1, String value2) {
            addCriterion("resident_status not between", value1, value2, "residentStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusIsNull() {
            addCriterion("estate_status is null");
            return (Criteria) this;
        }

        public Criteria andEstateStatusIsNotNull() {
            addCriterion("estate_status is not null");
            return (Criteria) this;
        }

        public Criteria andEstateStatusEqualTo(String value) {
            addCriterion("estate_status =", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusNotEqualTo(String value) {
            addCriterion("estate_status <>", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusGreaterThan(String value) {
            addCriterion("estate_status >", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusGreaterThanOrEqualTo(String value) {
            addCriterion("estate_status >=", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusLessThan(String value) {
            addCriterion("estate_status <", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusLessThanOrEqualTo(String value) {
            addCriterion("estate_status <=", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusLike(String value) {
            addCriterion("estate_status like", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusNotLike(String value) {
            addCriterion("estate_status not like", value, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusIn(List<String> values) {
            addCriterion("estate_status in", values, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusNotIn(List<String> values) {
            addCriterion("estate_status not in", values, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusBetween(String value1, String value2) {
            addCriterion("estate_status between", value1, value2, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andEstateStatusNotBetween(String value1, String value2) {
            addCriterion("estate_status not between", value1, value2, "estateStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusIsNull() {
            addCriterion("traffic_status is null");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusIsNotNull() {
            addCriterion("traffic_status is not null");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusEqualTo(String value) {
            addCriterion("traffic_status =", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusNotEqualTo(String value) {
            addCriterion("traffic_status <>", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusGreaterThan(String value) {
            addCriterion("traffic_status >", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusGreaterThanOrEqualTo(String value) {
            addCriterion("traffic_status >=", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusLessThan(String value) {
            addCriterion("traffic_status <", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusLessThanOrEqualTo(String value) {
            addCriterion("traffic_status <=", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusLike(String value) {
            addCriterion("traffic_status like", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusNotLike(String value) {
            addCriterion("traffic_status not like", value, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusIn(List<String> values) {
            addCriterion("traffic_status in", values, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusNotIn(List<String> values) {
            addCriterion("traffic_status not in", values, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusBetween(String value1, String value2) {
            addCriterion("traffic_status between", value1, value2, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andTrafficStatusNotBetween(String value1, String value2) {
            addCriterion("traffic_status not between", value1, value2, "trafficStatus");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeIsNull() {
            addCriterion("environment_change is null");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeIsNotNull() {
            addCriterion("environment_change is not null");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeEqualTo(String value) {
            addCriterion("environment_change =", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeNotEqualTo(String value) {
            addCriterion("environment_change <>", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeGreaterThan(String value) {
            addCriterion("environment_change >", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeGreaterThanOrEqualTo(String value) {
            addCriterion("environment_change >=", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeLessThan(String value) {
            addCriterion("environment_change <", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeLessThanOrEqualTo(String value) {
            addCriterion("environment_change <=", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeLike(String value) {
            addCriterion("environment_change like", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeNotLike(String value) {
            addCriterion("environment_change not like", value, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeIn(List<String> values) {
            addCriterion("environment_change in", values, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeNotIn(List<String> values) {
            addCriterion("environment_change not in", values, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeBetween(String value1, String value2) {
            addCriterion("environment_change between", value1, value2, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentChangeNotBetween(String value1, String value2) {
            addCriterion("environment_change not between", value1, value2, "environmentChange");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureIsNull() {
            addCriterion("environment_issure is null");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureIsNotNull() {
            addCriterion("environment_issure is not null");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureEqualTo(String value) {
            addCriterion("environment_issure =", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureNotEqualTo(String value) {
            addCriterion("environment_issure <>", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureGreaterThan(String value) {
            addCriterion("environment_issure >", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureGreaterThanOrEqualTo(String value) {
            addCriterion("environment_issure >=", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureLessThan(String value) {
            addCriterion("environment_issure <", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureLessThanOrEqualTo(String value) {
            addCriterion("environment_issure <=", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureLike(String value) {
            addCriterion("environment_issure like", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureNotLike(String value) {
            addCriterion("environment_issure not like", value, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureIn(List<String> values) {
            addCriterion("environment_issure in", values, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureNotIn(List<String> values) {
            addCriterion("environment_issure not in", values, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureBetween(String value1, String value2) {
            addCriterion("environment_issure between", value1, value2, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andEnvironmentIssureNotBetween(String value1, String value2) {
            addCriterion("environment_issure not between", value1, value2, "environmentIssure");
            return (Criteria) this;
        }

        public Criteria andFileIsNull() {
            addCriterion("file is null");
            return (Criteria) this;
        }

        public Criteria andFileIsNotNull() {
            addCriterion("file is not null");
            return (Criteria) this;
        }

        public Criteria andFileEqualTo(String value) {
            addCriterion("file =", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileNotEqualTo(String value) {
            addCriterion("file <>", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileGreaterThan(String value) {
            addCriterion("file >", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileGreaterThanOrEqualTo(String value) {
            addCriterion("file >=", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileLessThan(String value) {
            addCriterion("file <", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileLessThanOrEqualTo(String value) {
            addCriterion("file <=", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileLike(String value) {
            addCriterion("file like", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileNotLike(String value) {
            addCriterion("file not like", value, "file");
            return (Criteria) this;
        }

        public Criteria andFileIn(List<String> values) {
            addCriterion("file in", values, "file");
            return (Criteria) this;
        }

        public Criteria andFileNotIn(List<String> values) {
            addCriterion("file not in", values, "file");
            return (Criteria) this;
        }

        public Criteria andFileBetween(String value1, String value2) {
            addCriterion("file between", value1, value2, "file");
            return (Criteria) this;
        }

        public Criteria andFileNotBetween(String value1, String value2) {
            addCriterion("file not between", value1, value2, "file");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}